Repository navigation
ci: sync fork and wait for remake in OSC dev - #24
Conversation
Co-Authored-By: Claude <noreply@anthropic.com>
Research ReviewVerdict: no blocks-merge findings. Endpoints, field names, auth and response shapes all match source. Two polling edge cases are worth fixing or accepting knowingly. This PR is byte-identical (added lines hash-match) across all 6 runner PRs (web-runner#62, python-runner#24, wasm-runner#25, golang-runner#21, dotnet-runner#20, php-runner#10), so the findings apply to each. Verified
Polling race analysis
Needs Verification (minor)
Adjacent Stubs DetectedNone. The file is new; a grep for Orphaned Files DetectedNone. A workflow file is an entry point. Object Shape VerificationNot applicable. No object spreads; shell and jq only. Escape Hatch CoverageNo terminal-rejection branch is added to a service. The workflow's own failure exits are reachable only on genuine failures or timeouts. The main legitimate false-fail is the 40 min Contract diffNo request handler or server timeout changed. This PR adds only Impact Analysis
Risks Not Tested
Reviewed by PR Research Validator. This review checks whether code is based on verified sources rather than assumptions. |
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
Summary
Adds a GitHub Action that, on every push to
main(and manually viaworkflow_dispatch), triggers a sync-fork of this upstream repo in OSC dev and waits until the resulting remake finishes.Flow (osaas-maker-manager on
maker.svc.dev.osaas.io):POST /sync-forkwith this repo's URLGET /sync-fork/:iduntilsucceeded(fails onfailed)GET /maker?repositoryUrl=...until the order phase isDONE(fails onFAILED/ERROR)Required before this works: repo/org Actions secret
OSC_DEV_MAKER_API_KEY(dev maker-manager bearer API key). The job fails fast with a clear error if it is missing.Test plan
workflow_dispatch, confirm it ends green after the dev remake completesLessons
The sync-fork job already remakes an existing order itself (osaas-service-builder), so the workflow never calls
/remaker; it only waits on the order phase. A remake replaces the order with a new id, so polling is byrepositoryUrl, not order id.🤖 Generated with Claude Code
Co-Authored-By: Claude noreply@anthropic.com